#! /bin/bash
if [ -n "$1" ]
then
    do_date=$1
else
    do_date=`date -v-1d +%Y-%m-%d" +%F`
fi
sql="
insert overwrite table dim.dim_trade_product_cat
partition(dt='$do_date')
select
    t1.catid,
    t1.catname,
    t2.catid,
    t2.catname,
    t3.catid,
    t3.catname
from
-- 一级分类id 
-- 一级分类名称 
-- 二级分类id 
-- 二级分类名称 
-- 三级分类id 
-- 三级分类名称
-- 商品三级分类数据
(select catid, catname, parentid
       from ods.ods_trade_product_category
      where level=3 and dt='$do_date') t3
left join
-- 商品二级分类数据
(select catid, catname, parentid
       from ods.ods_trade_product_category
      where level=2 and dt='$do_date') t2
    on t3.parentid = t2.catid
left join
-- 商品一级分类数据
(select catid, catname, parentid
       from ods.ods_trade_product_category
      where level=1 and dt='$do_date') t1
    on t2.parentid = t1.catid;
"
hive -e "$sql"
